package com.cn.xiaonuo.slbfinances.slborders.entity;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**   
 *  
 * @Description:  商家提现明细每日汇总表
 * @Author:       luyangyang   
 * @CreateDate:   SlWithdrawalDetailed
 * @Version:      V1.0
 *    
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
@TableName("sl_withdrawal_detailed")
public class SlWithdrawalDetailed implements Serializable {

	private static final long serialVersionUID = 1671605518471L;

	@TableId(type = IdType.AUTO)
	private Long id;
	/**
	 * 提現id
	 */
	private Integer walletOrderId;
	/**
	 * 用户id
	 */
	private Integer userId;
	/**
	 * 用户名称
	 */
	private String userName;
	/**
	 * 商家id
	 */
	private Integer shopId;
	/**
	 * 商家名称
	 */
	private String shopName;
	/**
	 * 提现单号
	 */
	private String withdrawalOrderId;
	/**
	 * 提现流水号
	 */
	private String withdrawalNo;
	/**
	 * 提现金额
	 */
	private BigDecimal totalAmount;
	/**
	 * 银行卡号
	 */
	private String bankCardCode;
	/**
	 * 银行名称
	 */
	private String bankName;
	/**
	 * 开户支行
	 */
	private String openBranchBank;
	/**
	 * 财务是否打款：0未打款1已打款，2提现失败，3余额不足
	 */
	private String withdrawalStatus;
	/**
	 * 逻辑删除状态，0：未删除，1：已删除
	 */
	private Integer deleted;
	/**
	 * 提现时间
	 */
	private Date withdrawalTime;
	/**
	 * 结算时间
	 */
	private Date settlementTime;
	/**
	 * 创建时间
	 */
	private Date createdTime;
	/**
	 * 修改时间
	 */
	private Date updatedTime;
	/**
	 * 累计成功提现金额
	 */
	private BigDecimal addTotalAmount;
	/**
	 * 店铺可提现余额
	 */
	private BigDecimal shopAvailableAmount;

	/**
	 * 财务是否打款：0未打款1已打款
	 */
	@TableField(exist = false)
	private String sumStatus;

	/**
	 * 结款开始时间
	 */
	@TableField(exist = false)
	private String settlementBeginTime;

	/**
	 * 结款结束时间
	 */
	@TableField(exist = false)
	private String settlementEndTime;

	/**
	 * 申请开始时间
	 */
	@TableField(exist = false)
	private String beginTime;

	/**
	 * 申请结束时间
	 */
	@TableField(exist = false)
	private String endTime;
}
